"""
【装饰器】
装饰器模式(Decorator Pattern): 用于动态地给一个对象添加一些新功能，同时不影响对象。

通过使用装饰器类来包装原始类，添加一些额外的行为。如，一个文本编辑器中，可以来给文本添粗、斜体等样式。
"""


def decorator(func):
    def wrapper(*args, **kwargs):
        print("Before function call")
        result = func(*args, **kwargs)
        print("After function call")
        return result

    return wrapper


@decorator
def some_function():
    print("Function called")


some_function()
'''
Before function call
Function called
After function call
'''
